The present application relates to network management, and more particularly to the virtual network routing simulation.
Note that the points discussed below may reflect the hindsight gained from the disclosed inventions, and are not necessarily admitted to be prior art.
In modern information society networks are formed between various devices for rapid information exchange and services. Data exchange between devices and computers in the networks, whether the Internet, telecommunication networks, cable or wireless, often need to be routed between various of groups of servers and different groups of devices and computers, or different geometric locations, for efficient communication. Networks are commonly IP based wherein IP addresses are used to identify computers and devices in the network and data may be serialized into IP packets to be delivered between different IP destinations.
Routers are specialized computers used in this data networks to provide connectivity between remote computers and network segments. The IP Data or packet is routed from its source to its destination through a series of routers. The routers use the forward table or routing table to determine the next hop for the packet's destination (based on the destination IP address in the IP packet header). The routing table correlates the final destinations (usually grouped to be a subnet) to the next hop IP addresses.
In a simple network, static routes may be configured in routers to build the routing table. However, the present IP networks are increasingly becoming complex and intertwined and interloped, dynamic routing protocols are utilized to provide flexibility and to handle the increasing complexity.
The dynamic routing protocols may discover remote networks reachable in a network domain and dynamically associate the discovered networks with correct neighboring routers and therefore build up the routing tables dynamically for routers.
Network routing is the process of selecting paths in a network along which to send traffic, such as data packets in an IP network. For small networks, routing may be performed manually, by constructing routing tables prior to applying traffic to the network. Larger networks utilize dynamic routing, wherein routing tables are constructed automatically according to a routing protocol.
The most commonly implemented dynamic routing protocols include: Border Gateway Protocol (BGP), OSPF (Open Shortest Path First), RIP (Routing Information Protocol) and EIGRP (Enhanced Interior Gateway Routing Protocol) and others. Known routing algorithms include Distance Vector and Link-state. Different routing protocol may use different routing algorithms. For example the Link-state protocol Open Shortest Path First (OSPF) uses Dijkstra's algorithm to calculate the shortest path tree inside each network area.
Routers may be configured to run more than one of these routing protocols. Different hardware or software applications may have different configurations. One essential task of network professionals is to understand how a specific routing configuration change affects the routing table of a router.
For a middle size to large size of network wherein hundreds or thousands of routers may be needed for routing, it is quite difficult and expensive to figure out how one configuration change can affect the routing of data, and the efficiency of an application. Currently more than 75% of network outages are caused by the network configuration changes, which may shut down a network and cause millions of dollars of damages and losses.
Network simulation tools have been created to simulate traffic flows through networks in the virtual environment, to analyze many aspects of the network's operation, to increase reliability by simulating the effect of a network change, and ensure conformance with organizational policies and other rules regarding network operation.
A virtual network is a data structure comprising virtual features (nodes and links) that represent corresponding features in a physical network. Conventional network simulation includes creating a virtual network and simulating traffic flows through the virtual network according to predetermined routing protocols, to populate the virtual network nodes with routing and forwarding information such as forwarding tables. The virtual network may include virtual features that do not have an existing counterpart in an actual network. In either case, traffic flows may be simulated through the virtual network.
A variety of network analyses may be performed on any of these types of high-fidelity simulations using operational forwarding data, and reports may be generated based on the analyses. These reports provide network managers with valuable information on network operation. For example, reporting on forwarding tables themselves is critical to ensuring proper network behavior, e.g., that the proper default routes appear in the forwarding tables. Since a network node will drop a packet for which it has not entry in the forwarding table, maintaining default routes in each forwarding table is important to prevent excessive data loss and retransmission.
Due to the complexity of real world networks, complicated simulation models may be built from various calculations. It provides great advantages in efficiency to simplify the simulation in any conceptual way.